Github
集成了GitHub Packages
功能,目前提供了Npm
、Docker
、Maven
、NuGet
、RubyGems
的包管理工具,可以通过Github
管理开源包,本文主要介绍使用GitHub Packages
发布Npm
包。
首先需要制作一个package.json
文件,可以通过npm init
命令根据提示生成一个package.json
文件。
这是已经发布好的package.json
文件,作为示例,需要注意的是name
字段、publishConfig
字段与repository
字段的配置,在GitHub Packages
发布的包属于作用域包,需要使用@username/package-name
的形式作为name
字段,publishConfig
是发布到GitHub Packages
的必填且值固定的字段,repository
字段是必须要指定的仓库url
,可以发布多个包到一个仓库,可以参考https://github.com/WindrunnerMax/Asse/packages/292805
。
下面需要授权,首先在Github
申请一个Token
,user - setting - Developer settings - Personal access tokens - Generate new token
,生成一个用以发布Npm
包的Token
,需要选择权限,以下权限必选:
接下来将Token
添加至~/.npmrc
,win
用户是路径C://users/current-user
。
或者使用npm login
命令进行授权,注意用户名要全部小写,Token
的输入是以密码的方式输入,不会显示。
接下来在项目的根目录添加一个~/.npmrc
文件,并添加如下配置。
接下来就可以使用npm publish
命令发布包。
需要注意的是,无论发布包还是安装包都需要授权,也就是上述生成Token
以及配置的过程,否则无法安装指定的包,以我发布的包为例,执行安装。
如果使用Github
安装Npm
包很慢的话,可以考虑配置代理,同样是在~/.npmrc
文件中加入配置。